package cn.web.auction.pojo;

import java.util.ArrayList;
import java.util.List;

public class PcommentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PcommentExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andBcpartneridIsNull() {
            addCriterion("bcPartnerId is null");
            return (Criteria) this;
        }

        public Criteria andBcpartneridIsNotNull() {
            addCriterion("bcPartnerId is not null");
            return (Criteria) this;
        }

        public Criteria andBcpartneridEqualTo(String value) {
            addCriterion("bcPartnerId =", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridNotEqualTo(String value) {
            addCriterion("bcPartnerId <>", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridGreaterThan(String value) {
            addCriterion("bcPartnerId >", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridGreaterThanOrEqualTo(String value) {
            addCriterion("bcPartnerId >=", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridLessThan(String value) {
            addCriterion("bcPartnerId <", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridLessThanOrEqualTo(String value) {
            addCriterion("bcPartnerId <=", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridLike(String value) {
            addCriterion("bcPartnerId like", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridNotLike(String value) {
            addCriterion("bcPartnerId not like", value, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridIn(List<String> values) {
            addCriterion("bcPartnerId in", values, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridNotIn(List<String> values) {
            addCriterion("bcPartnerId not in", values, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridBetween(String value1, String value2) {
            addCriterion("bcPartnerId between", value1, value2, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andBcpartneridNotBetween(String value1, String value2) {
            addCriterion("bcPartnerId not between", value1, value2, "bcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridIsNull() {
            addCriterion("pcPartnerId is null");
            return (Criteria) this;
        }

        public Criteria andPcpartneridIsNotNull() {
            addCriterion("pcPartnerId is not null");
            return (Criteria) this;
        }

        public Criteria andPcpartneridEqualTo(String value) {
            addCriterion("pcPartnerId =", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridNotEqualTo(String value) {
            addCriterion("pcPartnerId <>", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridGreaterThan(String value) {
            addCriterion("pcPartnerId >", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridGreaterThanOrEqualTo(String value) {
            addCriterion("pcPartnerId >=", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridLessThan(String value) {
            addCriterion("pcPartnerId <", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridLessThanOrEqualTo(String value) {
            addCriterion("pcPartnerId <=", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridLike(String value) {
            addCriterion("pcPartnerId like", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridNotLike(String value) {
            addCriterion("pcPartnerId not like", value, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridIn(List<String> values) {
            addCriterion("pcPartnerId in", values, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridNotIn(List<String> values) {
            addCriterion("pcPartnerId not in", values, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridBetween(String value1, String value2) {
            addCriterion("pcPartnerId between", value1, value2, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPcpartneridNotBetween(String value1, String value2) {
            addCriterion("pcPartnerId not between", value1, value2, "pcpartnerid");
            return (Criteria) this;
        }

        public Criteria andPartnernameIsNull() {
            addCriterion("partnerName is null");
            return (Criteria) this;
        }

        public Criteria andPartnernameIsNotNull() {
            addCriterion("partnerName is not null");
            return (Criteria) this;
        }

        public Criteria andPartnernameEqualTo(String value) {
            addCriterion("partnerName =", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameNotEqualTo(String value) {
            addCriterion("partnerName <>", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameGreaterThan(String value) {
            addCriterion("partnerName >", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameGreaterThanOrEqualTo(String value) {
            addCriterion("partnerName >=", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameLessThan(String value) {
            addCriterion("partnerName <", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameLessThanOrEqualTo(String value) {
            addCriterion("partnerName <=", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameLike(String value) {
            addCriterion("partnerName like", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameNotLike(String value) {
            addCriterion("partnerName not like", value, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameIn(List<String> values) {
            addCriterion("partnerName in", values, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameNotIn(List<String> values) {
            addCriterion("partnerName not in", values, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameBetween(String value1, String value2) {
            addCriterion("partnerName between", value1, value2, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnernameNotBetween(String value1, String value2) {
            addCriterion("partnerName not between", value1, value2, "partnername");
            return (Criteria) this;
        }

        public Criteria andPartnercommentIsNull() {
            addCriterion("partnerComment is null");
            return (Criteria) this;
        }

        public Criteria andPartnercommentIsNotNull() {
            addCriterion("partnerComment is not null");
            return (Criteria) this;
        }

        public Criteria andPartnercommentEqualTo(String value) {
            addCriterion("partnerComment =", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentNotEqualTo(String value) {
            addCriterion("partnerComment <>", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentGreaterThan(String value) {
            addCriterion("partnerComment >", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentGreaterThanOrEqualTo(String value) {
            addCriterion("partnerComment >=", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentLessThan(String value) {
            addCriterion("partnerComment <", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentLessThanOrEqualTo(String value) {
            addCriterion("partnerComment <=", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentLike(String value) {
            addCriterion("partnerComment like", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentNotLike(String value) {
            addCriterion("partnerComment not like", value, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentIn(List<String> values) {
            addCriterion("partnerComment in", values, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentNotIn(List<String> values) {
            addCriterion("partnerComment not in", values, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentBetween(String value1, String value2) {
            addCriterion("partnerComment between", value1, value2, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnercommentNotBetween(String value1, String value2) {
            addCriterion("partnerComment not between", value1, value2, "partnercomment");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseIsNull() {
            addCriterion("partnerPraise is null");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseIsNotNull() {
            addCriterion("partnerPraise is not null");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseEqualTo(Integer value) {
            addCriterion("partnerPraise =", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseNotEqualTo(Integer value) {
            addCriterion("partnerPraise <>", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseGreaterThan(Integer value) {
            addCriterion("partnerPraise >", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseGreaterThanOrEqualTo(Integer value) {
            addCriterion("partnerPraise >=", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseLessThan(Integer value) {
            addCriterion("partnerPraise <", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseLessThanOrEqualTo(Integer value) {
            addCriterion("partnerPraise <=", value, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseIn(List<Integer> values) {
            addCriterion("partnerPraise in", values, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseNotIn(List<Integer> values) {
            addCriterion("partnerPraise not in", values, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseBetween(Integer value1, Integer value2) {
            addCriterion("partnerPraise between", value1, value2, "partnerpraise");
            return (Criteria) this;
        }

        public Criteria andPartnerpraiseNotBetween(Integer value1, Integer value2) {
            addCriterion("partnerPraise not between", value1, value2, "partnerpraise");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}